Object-oriented design patterns in Fortran 90/95: mazev1, mazev2 and mazev3

نویسندگان

  • Viktor K. Decyk
  • Henry J. Gardner
چکیده

This paper discusses the concept, application, and usefulness of software design patterns for scientific programming in Fortran 90/95. An example from the discipline of object-oriented design patterns, that of a game based on navigation through a maze, is used to describe how some important patterns can be implemented in Fortran 90/95 and how the progressive introduction of design patterns can usefully restructure Fortran software as it evolves. This example is complemented by a discussion of how design patterns have been used in a real-life simulation of Particle-in-Cell plasma physics. The following patterns are mentioned in this paper: Factory, Strategy, Template, Abstract Factory and Facade.

برای دانلود متن کامل این مقاله و بیش از 32 میلیون مقاله دیگر ابتدا ثبت نام کنید

ثبت نام

اگر عضو سایت هستید لطفا وارد حساب کاربری خود شوید

منابع مشابه

Parallel Object-oriented Design in Fortran for Beam Dynamics Simulations∗

In this paper we describe an object-oriented software design approach, using Fortran 90 (F90) and the Message Passing Interface (MPI), for modeling the transport of intense charged particle beams. The object-oriented approach improves the maintainability, resuability, and extensibility of the software, while the use of explicit message passing provides the freedom necessary to achieve high perf...

متن کامل

Object-oriented Scientific Programming with Fortran 90

Fortran 90 is a modern language that introduces many important new features beneficial for scientific programming. While the array-syntax notation has received the most attention, we have found that many modern softaware development techniques can be supported by this language, including object-oriented concepts. While Fortran 90 is not a full object-oriented language it can directly support ma...

متن کامل

Implementation of Object-oriented Design with Fortran Language in Beam Dynamics Studies

In this paper, an object-oriented design for beam dynamics simulations in accelerators is implemented using Fortran language. Using module and derived type in F90, we can emulate object concept in the object-oriented design. This gives Fortran code a better maintainability, reusability, and extensibility. The overhead associated with the objectoriented implementation has only a minor effect on ...

متن کامل

. co m p - ph ] 1 5 N ov 1 99 9 Object - oriented construction of a multigrid electronic - structure code with Fortran 90

We describe the object-oriented implementation of a higher-order finitedifference density-functional code in Fortran 90. Object-oriented models of grid and related objects are constructed and employed for the implementation of an efficient one-way multigrid method we have recently proposed for the density-functional electronic-structure calculations. Detailed analysis of performance and strateg...

متن کامل

High-performance language interoperability for scientific computing through Babel

High-performance scientific applications are usually built from software modules written in multiple programming languages. This raises the issue of language interoperability which involves making calls between languages, converting basic types, and bridging disparate programming models. Babel provides a featurerich, extensible, high-performance solution to the language interoperability problem...

متن کامل

ذخیره در منابع من


  با ذخیره ی این منبع در منابع من، دسترسی به آن را برای استفاده های بعدی آسان تر کنید

برای دانلود متن کامل این مقاله و بیش از 32 میلیون مقاله دیگر ابتدا ثبت نام کنید

ثبت نام

اگر عضو سایت هستید لطفا وارد حساب کاربری خود شوید

عنوان ژورنال:
  • Computer Physics Communications

دوره 178  شماره 

صفحات  -

تاریخ انتشار 2008